FROM python:3.10-slim
LABEL authors="xuhao"

# 安装必要的包，包括 OpenSSH 服务器
RUN apt-get update && \
    apt-get install -y openssh-server && \
    rm -rf /var/lib/apt/lists/*

# 创建 SSH 配置目录
RUN mkdir /var/run/sshd

# 设置一个默认的 root 密码（建议在生产环境中使用更安全的配置方式）
RUN echo 'root:1234' | chpasswd

# 允许 root 用户通过 SSH 登录
RUN sed -i 's/#PermitRootLogin prohibit-password/PermitRootLogin yes/' /etc/ssh/sshd_config

# Expose SSH 端口
EXPOSE 22

# Expose HTTP 端口
EXPOSE 443

# 安装Nginx服务器
RUN apt-get update && apt-get install -y nginx

COPY . /app
WORKDIR /app

# 安装后端依赖
RUN pip install -r requirements.txt

# 配置Nginx服务器
RUN cp ./nginx/nginx.conf /etc/nginx/nginx.conf
RUN cp ./nginx/sites-enabled/default /etc/nginx/sites-enabled/default

# 配置SSL证书
RUN cp -r ./ssl/certs/* /etc/ssl/certs/
RUN cp -r ./ssl/keys/* /etc/ssl/private/

RUN chmod +x start.sh

CMD ["./start.sh"]
